@height-base: @line-height-computed + @padding-base-vertical * 2;
@height-lg: floor(@font-size-large * @line-height-base) +
  @padding-large-vertical * 2;
@height-sm: floor(@font-size-small * 1.5) + @padding-small-vertical * 2;
@height-xs: floor(@font-size-small * 1.2) + @padding-small-vertical + 1;

.btn-social {
  position: relative;
  padding-left: @height-base + @padding-base-horizontal;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  :first-child {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: @height-base;
    line-height: @height-base + 2;
    font-size: 1.6em;
    text-align: center;
    border-right: 1px solid rgba(0, 0, 0, 0.2);
  }
  &.btn-lg {
    padding-left: @height-lg + @padding-large-horizontal;
    :first-child {
      line-height: @height-lg;
      width: @height-lg;
      font-size: 1.8em;
    }
  }
  &.btn-sm {
    padding-left: @height-sm + @padding-small-horizontal;
    :first-child {
      line-height: @height-sm;
      width: @height-sm;
      font-size: 1.4em;
    }
  }
  &.btn-xs {
    padding-left: @height-xs + @padding-small-horizontal;
    :first-child {
      line-height: @height-xs;
      width: @height-xs;
      font-size: 1.2em;
    }
  }
}

.btn-social-icon {
  .btn-social;
  height: @height-base + 2;
  width: @height-base + 2;
  padding-left: 0;
  padding-right: 0;
  :first-child {
    border: none;
    text-align: center;
    width: 100% !important;
  }
  &.btn-lg {
    height: @height-lg;
    width: @height-lg;
    padding-left: 0;
    padding-right: 0;
  }
  &.btn-sm {
    height: @height-sm + 2;
    width: @height-sm + 2;
    padding-left: 0;
    padding-right: 0;
  }
  &.btn-xs {
    height: @height-xs + 2;
    width: @height-xs + 2;
    padding-left: 0;
    padding-right: 0;
  }
}

.btn-social(@color-bg, @color: #fff) {
  background-color: @color-bg;
  .button-variant(@color, @color-bg, rgba(0,0,0,0.2));
}

.auth {
  .btn-social-icon {
    margin-top: 2px;
    margin-bottom: 2px;
  }
}

.remember {
  .text-center;
  label {
    display: inline-block;
  }
}

.btn-azure_ad {
  .btn-social(#307ea7);
}
.btn-bitbucket {
  .btn-social(#205081);
}
.btn-dropbox {
  .btn-social(#007ee5);
}
.btn-facebook {
  .btn-social(#3b5998);
}
.btn-github {
  .btn-social(#444444);
}
.btn-google {
  .btn-social(#dd4b39);
}
.btn-instagram {
  .btn-social(#3f729b);
}
.btn-linkedin {
  .btn-social(#007bb6);
}
.btn-mailru {
  .btn-social(#168de2);
}
.btn-microsoft {
  .btn-social(#2672ec);
}
.btn-reddit {
  .btn-social(#eff7ff, #000);
}
.btn-twitter {
  .btn-social(#55acee);
}
.btn-vk {
  .btn-social(#587ea3);
}
.btn-yahoo {
  .btn-social(#720e9e);
}
